package com.qianli.user.ro.base;

import com.qianli.user.ro.BaseComplete;
import com.qianli.user.ro.BaseRO;

import java.io.Serializable;

/**
 * name:居住信息
 * auth:ting.li@qianli-inc.com
 * date:2017/12/2214:44
 * version: v1.0.0
 **/
public class UserResidentRO extends BaseRO implements BaseComplete, Serializable{

    private static final long serialVersionUID = 7879225533609307271L;
    /**
     *居住省份
     */
    private Integer provinceId;
    /**
     *居住省份
     */
    private String province;
    /**
     *居住城市
     */
    private Integer cityId;
    /**
     *居住城市
     */
    private String city;
    /**
     *居住详细地址
     * 【必填】
     */
    private String address;
    /**
     *居住时长
     */
    private Integer duration;
    /**
     * 邮政编码
     */
    private String pinCode;
    /**
     * 永久地址 州
     */
    private Integer permanentStateId;
    /**
     * 永久地址 州
     */
    private String permanentState;
    /**
     * 永久地址 城市
     */
    private Integer permanentCityId;
    /**
     * 永久地址 城市
     */
    private String permanentCity;
    /**
     * 永久地址 详细地址
     */
    private String permanentAddress;
    /**
     * 永久地址 邮编
     */
    private String permanentPinCode;

    public Integer getPermanentStateId() {
        return permanentStateId;
    }

    public UserResidentRO setPermanentStateId(Integer permanentStateId) {
        this.permanentStateId = permanentStateId;
        return this;
    }

    public String getPermanentState() {
        return permanentState;
    }

    public UserResidentRO setPermanentState(String permanentState) {
        this.permanentState = permanentState;
        return this;
    }

    public Integer getPermanentCityId() {
        return permanentCityId;
    }

    public UserResidentRO setPermanentCityId(Integer permanentCityId) {
        this.permanentCityId = permanentCityId;
        return this;
    }

    public String getPermanentCity() {
        return permanentCity;
    }

    public UserResidentRO setPermanentCity(String permanentCity) {
        this.permanentCity = permanentCity;
        return this;
    }

    public String getPermanentAddress() {
        return permanentAddress;
    }

    public UserResidentRO setPermanentAddress(String permanentAddress) {
        this.permanentAddress = permanentAddress;
        return this;
    }

    public String getPermanentPinCode() {
        return permanentPinCode;
    }

    public UserResidentRO setPermanentPinCode(String permanentPinCode) {
        this.permanentPinCode = permanentPinCode;
        return this;
    }

    public String getPinCode() {
        return pinCode;
    }

    public UserResidentRO setPinCode(String pinCode) {
        this.pinCode = pinCode;
        return this;
    }

    public Integer getProvinceId() {
        return provinceId;
    }

    public void setProvinceId(Integer provinceId) {
        this.provinceId = provinceId;
    }

    public String getProvince() {
        return province;
    }

    public void setProvince(String province) {
        this.province = province;
    }

    public Integer getCityId() {
        return cityId;
    }

    public void setCityId(Integer cityId) {
        this.cityId = cityId;
    }

    public String getCity() {
        return city;
    }

    public void setCity(String city) {
        this.city = city;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public Integer getDuration() {
        return duration;
    }

    public void setDuration(Integer duration) {
        this.duration = duration;
    }

    @Override
    public Boolean isComplete() {
        return getAddress() != null && getProvinceId() != null
               && getCityId() != null && getDuration() != null;
    }
}
